package com.meserovirtual.persistencia;

import com.meserovirtual.modelos.AreaFabricacionProducto;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;

/**
 *
 * @author Adalberto
 */
@Stateless
public class AreaFabricacionProductoDAO implements IAreaFabricacionProductoDAO {
    @PersistenceContext
    EntityManager entityManager;
    
    @Override
    public void registrar(AreaFabricacionProducto areaFabricacionProducto) {
        try {
            entityManager.persist(areaFabricacionProducto);
        } catch (RuntimeException e) {
            throw e;           
        }
    }

    @Override
    public void modificar(AreaFabricacionProducto areaFabricacionProducto) {
        try {
            entityManager.merge(areaFabricacionProducto);
        } catch (RuntimeException e) {
            throw e;
           
        }
    }

    @Override
    public void eliminar(AreaFabricacionProducto areaFabricacionProducto) {
        try {
            entityManager.remove(areaFabricacionProducto);
        } catch (RuntimeException e) {
            throw e;
           
        }
    }

    @Override
    public List<AreaFabricacionProducto> consultar() {
        try{
            String jpql = "select a from AreaFabricacionProducto a";
            Query query = entityManager.createQuery(jpql);
            return query.getResultList();
        }catch(RuntimeException e){
            throw e;
        }
    }

    @Override
    public AreaFabricacionProducto consultarPorCodigo(Integer codigo) {
        try{
            return entityManager.find(AreaFabricacionProducto.class, codigo);
        }catch(RuntimeException e){
            throw e;
        }
    }

  
}
